/**
 * Ingenius-Group S.A.S
 *
 * Project: SAU
 * File: DAO.java
 * Date: 01/03/2011
 */

package com.ingenius.sau.server.persistence;

import java.util.List;

import com.ingenius.sau.shared.model.core.BaseBean;
import com.ingenius.sau.shared.util.filter.Filter;

/**
 * Class <strong>DAO</strong>
 * 
 * @author Jesus David
 * @version 0.1
 */
public interface DAO<T extends BaseBean> {

	public Boolean save(T object);

	public Boolean update(T object);

	public Boolean delete(String id);

	public T get(String id);

	public Integer count(List<Filter> filters);

	public List<T> getRange(List<Filter> filters, String orderBy, int start,
			int limit);

}
